/*	
 * Copyright (C) 2010  Mark Schyns
 * 
 * This file is part of Poker League Leaderboard.
 * 
 * Poker League Leaderboard is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Poker League Leaderboard is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Poker League Leaderboard.  If not, see <http://www.gnu.org/licenses/>.
*/

package com.gambit727.pokerleagueleaderboard;

import java.util.ArrayList;
import java.util.List;

public class Player {

	/* TODO implement interface comparable, so that a collection of type Player will be sortable. */
	/* TODO add comparable  class   http://java.sun.com/docs/books/tutorial/collections/interfaces/order.html */

	// Fields.
	private String playerId = "";
	private double pointTotal = 0.0;
	private int numberOfEvents = 0;
	private int numberOfCashes = 0;
	private double buyInTotal = 0.0;
	private double cashOutTotal = 0.0;
	private static List<Finish> finishes = new ArrayList<Finish>();

	
	// Constructors.	
	public Player(String playerId) {
		setPlayerId(playerId);
	}

	// Methods.
	private void setPlayerId(String playerId) {
		this.playerId = playerId;
	}
	
	public String getPlayerId() {
		return playerId;
	}
	
	public void setPointTotal(double pointTotal) {
		this.pointTotal = pointTotal;
	}
	
	public double getPointTotal() {
		return pointTotal;
	}
	
	public void setNumberOfEvents(int numberOfEvents) {
		this.numberOfEvents = numberOfEvents;
	}

	public int getNumberOfEvents() {
		return numberOfEvents;
	}

	public void setNumberOfCashes(int numberOfCashes) {
		this.numberOfCashes = numberOfCashes;
	}
	
	public int getNumberOfCashes() {
		return numberOfCashes;
	}

	public void setBuyInTotal(double buyInTotal) {
		this.buyInTotal = buyInTotal;
	}
	
	public double getBuyInTotal() {
		return buyInTotal;
	}
	
	public void setCashOutTotal(double cashOutTotal) {
		this.cashOutTotal = cashOutTotal;
	}

	public double getCashOutTotal() {
		return cashOutTotal;
	}

	public void addFinish(Finish finish) {
		finishes.add(finish);
	}
}
